package com.hxtec.polaris.mapper;

import com.hxtec.polaris.commons.dto.PmsSearchSpuInfo;
import com.hxtec.polaris.entity.ShopProductBase;
import org.apache.ibatis.annotations.Param;import tk.mybatis.mapper.MyMapper;import java.util.List;import java.util.Map;

/**
 * @author Caps
 * @date 2019/11/29
 */
public interface ShopProductBaseMapper extends MyMapper<ShopProductBase> {
    /**
     * 分页获取商品
     *
     * @param start
     * @param rows
     * @param order 1 综合排序（weight降序） 2销量优先（降序） 3价格（price升序）4价格（price降序）
     * @return
     */
    List<Map<String, Object>> getAllGoods(@Param("start") Integer start, @Param("rows") Integer rows, @Param("order") String order);

    /**
     * 获取猜你喜欢数据
     *
     * @param start
     * @param rows
     * @return
     */
    List<Map<String, Object>> getGuessLikeGoods(@Param("start") Integer start, @Param("rows") Integer rows, @Param("order") String order);

    /**
     * 获取分类精选数据
     *
     * @param start
     * @param rows
     * @return
     */
    List<Map<String, Object>> getClassifiedSelectGoods(@Param("start") Integer start, @Param("rows") Integer rows);

    /**
     * 获取某个分类下的商品列表
     *
     * @param start
     * @param rows
     * @return
     */
    List<Map<String, Object>> getTargrtGroupGoods(@Param("start") Integer start, @Param("rows") Integer rows, @Param("cid") String cid, @Param("order") String order);

    /**
     * 获取某个分类下的商品列表总数
     *
     * @param start
     * @param rows
     * @return
     */
    List<Map<String, Object>> getTargrtGroupGoodsCount(@Param("start") Integer start, @Param("rows") Integer rows, @Param("cid") String cid, @Param("order") String order);

    List<PmsSearchSpuInfo> getSpuInfo();
}
